package com.moon.admin.tools.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.moon.admin.framework.mybatisplus.entity.Entity;
import lombok.Data;

/**
 * 代码生成业务字段表 gen_table_column
 * 
 * @author moon
 */
@TableName("gen_table_column")
@Data
public class GenTableColumn extends Entity {

    private static final long serialVersionUID = 1L;

    /** 编号 */
    @TableId(type= IdType.AUTO)
    private Integer id;

    /** 归属表编号 */
    private Integer tableId;

    /** 列名称 */
    private String columnName;

    /** 列描述 */
    private String columnComment;

    /** JAVA类型 */
    private String javaType;

    /** JAVA字段名 */
    private String javaField;

    /** 是否表单字段（1是） */
    private String isEdit;

    /** 是否列表字段（1是） */
    private String isList;

    /** 是否查询字段（1是） */
    private String isQuery;

    /** 显示类型（input文本框、textarea文本域、selectSingle下拉单选、selectMultiple下拉多选、datetime日期控件） */
    private String htmlType;

    /** 字段长度 */
    private Integer columnLength;

    /** 字典类型 */
    private String dictType;

    /** 是否必填（1是） */
    private String isRequired;

    /** 列类型 */
    @TableField(exist = false)
    private String columnType;


    /** 是否主键（1是） 暂时没用*/
    @TableField(exist = false)
    private String isPk;

    public boolean isPk()
    {
        return isPk(this.isPk);
    }

    public boolean isPk(String isPk)
    {
        return isPk != null && "1".equals(isPk);
    }
}
